package cn.utils;

import java.text.SimpleDateFormat;
import java.util.Date;

public class StringUtil {

	/**
	 * 把用逗号个来的字符串改为字符用单引号，用于数据库in查询用。
	 * @param id
	 * @return
	 */
	public static String FormatForDB(String id){
		String str="";
		str=("'"+id+"'").replaceAll(",", "','");
		return str;
	}
	
	

	/**
	 * 把属性按照java的命名规范把下滑线进行转换
	 * @param str
	 * @return
	 */
	public static String changePropertyToJavaFormat(String str){
		String dealStr="";
		
		str=str.toLowerCase();
		
		String strs[]=str.split("_");
		
		if(strs.length>1){
			dealStr=strs[0];
			for(int i=1;i<strs.length;i++){
				dealStr=dealStr+strs[i].substring(0, 1).toUpperCase()+strs[i].substring(1,strs[i].length());
			}
		}else{
			dealStr=str;
		}
		
		return dealStr;
	}
	
	/**
	 * 生成get和set方法
	 * @param val
	 * @param type
	 * @return
	 */
	public static StringBuffer createGetSetMethod(String val,String type){
		   StringBuffer stringBuffer=new StringBuffer();
		   
		   //getMethod
		   stringBuffer.append("    public "+type+"  get"+toUpperFirstCase(val)+"()\n");
		   stringBuffer.append("     {\n");
		   stringBuffer.append("         return "+val+";\n");
		   stringBuffer.append("     }\n");
		   
		 //setMethod
		   stringBuffer.append("    public void  set"+toUpperFirstCase(val)+"("+type+" "+val+")\n");
		   stringBuffer.append("     {\n");
		   stringBuffer.append("        this."+val+"="+val+";\n");
		   stringBuffer.append("     }\n");   
		   stringBuffer.append("\n\n\n");
		   return stringBuffer;
	   }
	
  /**
   * 首字符大写
   * @param str
   * @return
   */
    public static String toUpperFirstCase(String str){
		
		str=str.substring(0,1).toUpperCase()+str.substring(1,str.length());
		
		return str;
	}
    
    /**
	 * 判断字符串任意多个是否全部为空
	 * @param str判断的字符串
	 * @return
	 * @author mzl
	 */
	public static boolean isAllEmpty(String ...strs){
		
		boolean flag=true;
		for(String str:strs){
			if(str!=null&&!"".equals(str.trim())){
				flag =false;
				break;
			}
		}
		return flag;
	}
	

	/**
	 * 判断字符串任意多个至少一个为空
	 * @param str判断的字符串
	 * @return
	 * @author mzl
	 */
	public static boolean isOneEmpty(String ...strs){
		
		boolean flag=true;
		for(String str:strs){
			if(str==null&&"".equals(str.trim())){
				flag =false;
				break;
			}
		}
		
		return flag;
	}
	
	
}
